package cn.sxw.ld.common.utils;


import cn.sxw.ld.common.dto.R;
import org.jetbrains.annotations.Nullable;

import java.util.Map;

/**
 * @author: SXW
 * @since: 2025年02月25日 21:52
 * @desc:
 */
public class MsgUtils {


    /**
     * 方便输出信息的工具方法
     *
     * @param map
     * @return
     */
    @Nullable
    public static R<String> getMsg(Map<Integer, String> map) {
        int type = Integer.parseInt(map.get(4));
        return switch (type) {
            case 1 -> R.success(map.get(1));
            case 2 -> R.error(map.get(2));
            case 3 -> R.error(map.get(3));
            default -> null;
        };
    }

    /**
     * 获取返回信息的工具方法
     *
     * @param resultCode 返回的结果码
     *                   1 成功
     *                   2 失败
     *                   3 数据错误
     * @param map        返回的 map
     * @param sucMsg     成功信息
     * @param failMsg    失败信息
     */
    public static void setMsg(int resultCode, Map<Integer, String> map, String sucMsg, String failMsg) {
        switch (resultCode) {
            case 1:
                map.put(resultCode, sucMsg);
                map.put(4, "1");
                break;
            case 2:
                map.put(resultCode, failMsg);
                map.put(4, "2");
                break;
            case 3:
                map.put(resultCode, failMsg);
                map.put(4, "3");
                break;
            default:
                break;
        }
    }

}
